﻿using System;
using System.Collections;

namespace program18
{
    class Program
    {
        static void Main(string[] args)
        {
            ////随机生成10000个元素的数组
            //int[] nums = new int[1000];
            //ArrayList arr = new ArrayList();
            //Random rnd = new Random();

            //while(arr.Count<1000)
            //{
            //    int tempNum = rnd.Next(1, 10000);
            //    if (!arr.Contains(tempNum))
            //    {
            //        arr.Add(tempNum);
            //    }

            //}

            int[] nums = { 9,7,6,2,1,3,4,8,5 };
            for (var i = 0; i < nums.Length; i++)

                Console.Write(nums[i]+"");
            Console.WriteLine("排序后。。。");
            ////冒泡排序
            //Console.WriteLine("冒泡排序");
            //int temp = 0;
            //int[] arr = { 12, 34, 45, 56, 67, 88, 3, 9 };
            //Console.WriteLine("排序前的数组：");
            //foreach(int item in arr)
            //{
            //    Console.Write(item + "");
            //}
            //Console.WriteLine();

            //for (int i=0;i<arr.Length;i++)
            //{


            //        for (int j=0;j<arr.Length-1;j++)
            //        {
            //            if (arr[j]>arr[j+1])
            //            {
            //                temp = arr[j + 1];
            //                arr[j + 1] = arr[j];
            //                arr[j] = temp;
            //            }
            //        }
            //    Console.WriteLine("排序后的数组：");
            //    foreach(int item in arr)
            //    {
            //        Console.Write(item+"");
            //    }
            //    Console.WriteLine();


            //选择排序
            int minlndex;
                for (var i=0;i<nums.Length-1;i++)
                {
                    minlndex = i;
                    //查询余下数组中最小值的下标放到minlndex
                    for (var j=i+1;j<nums.Length;j++)
                    {
                        if(nums[j]<nums[minlndex])
                        {
                            minlndex = j;
                        }
                    }
                    var tmp = nums[i];
                    nums[i] = nums[minlndex];
                    nums[minlndex] = tmp;
                }
                for (var i = 0; i < nums.Length; i++)
                    Console.Write(nums[i] + "");
        }
    }
}
